CHAPTER 10 - Using Soft-ICE with MagicCV or MagicCVW 10.01 Introduction 10.02 Running Soft-ICE with MagicCV or MagicCVW 10.03 Special Considerations 10.04 The Soft-ICE ACTION command 10.01 Introduction MagicCV allows you to run Microsoft's CodeView in less than 8K of conventional memory on your 80386 machine. MagicCVW allows you to run Microsoft's CodeView for Windows in less than 8K of conventional memory on your 80386 machine. Using Soft-ICE in combination with MagicCV or MagicCVW allows you to have the power of Soft-ICE while still having the convenience of using the CodeView product that you are familiar with. In the rest of this chapter, statements about MCV will apply to both MagicCV and MagicCVW, and statements about CV will apply to both CodeView and CodeView for Windows. 10.02 Running Soft-ICE with MagicCV or MagicCVW To use Soft-ICE 2.0 and MCV together, you must install S-ICE.EXE as a loadable device driver. S-ICE.EXE comes on the Soft-ICE diskette. S- ICE.EXE replaces NUMEGA.SYS in CONFIG.SYS. Use the /MCV, /EMM, and the /EXT switches as if using MagicCV or MagicCVW alone. There are additional switches that you may want to use for Soft-ICE. Refer to chapter 6 for information about these switches. To run MagicCV or MagicCVW after Soft-ICE has been loaded, refer to your MagicCV or MagicCVW manual. Notes : MagicCVW requires Soft-ICE version 2.00 or greater. MagicCV requires Soft-ICE version 1.02 or greater. The S-ICE.SYS and NUMEGA.SYS drivers were shipped with some versions of Soft-ICE. The S-ICE and NUMEGA drivers must be replaced by S-ICE.EXE before you can run MagicCV and Soft- ICE 2.0 together. 10.03 Special Considerations Two Virtual Machines : When you are using both Soft-ICE and MCV together, you must keep in mind that CV is in a separate virtual machine from the target environment. You can pop Soft-ICE up from either virtual machine, i.e., when CV is running, or when the target program is running. If you pop Soft-ICE up while the target program is running everything works as defined in the Soft-ICE manual. If you pop Soft-ICE up while CV is running (typically done to break points), you must keep a few points in mind: * The registers are those of CV and they CAN NOT be changed. * For convenience, the Soft-ICE MAP command displays the memory map of the target program virtual machine, not the memory map of the CV virtual machine. The highlighted area in the memory map may not be correct. * Any display or modification of memory occurs in the target program's virtual machine. * You have no visibility into the CV virtual machine except for the display of register values. Remember that when popping up the Soft-ICE window while CV is active, the register values are those of CV and should not be modified. * Instruction and program tracing is disabled from the Soft-ICE window when CV is active. This is to prevent confusion, because a trace would actually step through CV, not through the target program. If you attempt to do a Soft-ICE Trace (T) or Program Step (P) command while CV is active, you will get the warning message: "Function not available in CV virtual machine." To trace through your target program code instead, you can do one of two options: * Use the CV trace command. To do this, exit the Soft-ICE window using the Soft-ICE X command, then do one or more CV traces to step through the target program. * Use Soft-ICE to go to the target program address, then use the Soft-ICE T or P commands to step through your target program. To do this, exit the Soft-ICE window with the Soft-ICE X command, then press the 'F3' key until CV is in 'mixed mode'. This allows you to see both the source lines and the instruction addresses. Pop up Soft-ICE. If the Soft-ICE window is not already in narrow mode, use the S